home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 05.zip / BS1 part 5 / SASC_6.0_Disk_4.adf / Compiler_Headers / Include / clib / alib_protos.h next >
C/C++ Source or Header  |  1992-07-30  |  4KB  |  105 lines

  1. #ifndef  CLIB_ALIB_PROTOS_H
  2. #define  CLIB_ALIB_PROTOS_H
  3. /*
  4. **    $Filename: clib/alib_protos.h $
  5. **    $Release: 2.04 Includes, V37.4 $
  6. **    $Revision: 1.4 $
  7. **    $Date: 91/11/06 $
  8. **
  9. **    C prototypes. For use with 32 bit integers only.
  10. **
  11. **    (C) Copyright 1990-1991 Commodore-Amiga, Inc.
  12. **        All Rights Reserved
  13. */
  14. #ifndef  EXEC_TYPES_H
  15. #include <exec/types.h>
  16. #endif
  17. #ifndef  DEVICES_TIMER_H
  18. #include <devices/timer.h>
  19. #endif
  20. #ifndef  LIBRARIES_COMMODITIES_H
  21. #include <libraries/commodities.h>
  22. #endif
  23. #ifndef  UTILITY_HOOKS_H
  24. #include <utility/hooks.h>
  25. #endif
  26. #ifndef  INTUITION_CLASSUSR_H
  27. #include <intuition/classusr.h>
  28. #endif
  29.  
  30. /*  Exec support functions */
  31.  
  32. void BeginIO( struct IORequest *ioReq );
  33. struct IORequest *CreateExtIO( struct MsgPort *port, long ioSize );
  34. struct MsgPort *CreatePort( STRPTR name, long pri );
  35. struct IOStdReq *CreateStdIO( struct MsgPort *port );
  36. struct Task *CreateTask( STRPTR name, long pri, APTR initPC,
  37.     unsigned long stackSize );
  38. void DeleteExtIO( struct IORequest *ioReq );
  39. void DeletePort( struct MsgPort *ioReq );
  40. void DeleteStdIO( struct IOStdReq *ioReq );
  41. void DeleteTask( struct Task *task );
  42. void NewList( struct List *list );
  43.  
  44. /* Graphics support functions in amiga.lib */
  45.  
  46. void AddTOF( struct Isrvstr *i, long (*p)(), long a );
  47. void RemTOF( struct Isrvstr *i );
  48. void waitbeam( long b );
  49.  
  50. /* math support functions in amiga.lib */
  51.  
  52. FLOAT afp( BYTE *string );
  53. void arnd( long place, long exp, BYTE *string );
  54. FLOAT dbf( unsigned long exp, unsigned long mant );
  55. LONG fpa( FLOAT fnum, BYTE *string );
  56. void fpbcd( FLOAT fnum, BYTE *string );
  57.  
  58. /* Timer support functions in amiga.lib (V36 and higher only) */
  59.  
  60. LONG TimeDelay( long unit, unsigned long secs, unsigned long microsecs );
  61. LONG DoTimer( struct timeval *, long unit, long command );
  62.  
  63. /*  Commodities functions in amiga.lib (V36 and higher only) */
  64.  
  65. void ArgArrayDone( void );
  66. UBYTE **ArgArrayInit( long argc, UBYTE **argv );
  67. LONG ArgInt( UBYTE **tt, STRPTR entry, long defaultval );
  68. STRPTR ArgString( UBYTE **tt, STRPTR entry, STRPTR defaulstring );
  69. CxObj *HotKey( STRPTR description, struct MsgPort *port, long id );
  70. struct InputEvent *InvertString( STRPTR str, struct KeyMap *km );
  71. void FreeIEvents( struct InputEvent *events );
  72.  
  73. /* Commodities Macros */
  74.  
  75. /* CxObj *CxCustom(LONG(*)(),LONG id)(A0,D0) */
  76. /* CxObj *CxDebug(LONG id)(D0) */
  77. /* CxObj *CxFilter(STRPTR description)(A0) */
  78. /* CxObj *CxSender(struct MsgPort *port,LONG id)(A0,D0) */
  79. /* CxObj *CxSignal(struct Task *task,LONG signal)(A0,D0) */
  80. /* CxObj *CxTranslate(struct InputEvent *ie)(A0) */
  81.  
  82. /*  ARexx support functions in amiga.lib */
  83.  
  84. BOOL CheckRexxMsg( struct Message *rexxmsg );
  85. LONG GetRexxVar( struct Message *rexxmsg, UBYTE *name, UBYTE **result );
  86. LONG SetRexxVar( struct Message *rexxmsg, UBYTE *name, UBYTE *value,
  87.     long length );
  88.  
  89. /*  Intuition hook and boopsi support functions in amiga.lib  */
  90. /*  These functions require ROM V36 and higher only. */
  91.  
  92. ULONG callHookPkt( struct Hook *hookPtr, Object *obj, APTR message );
  93. ULONG callHook( struct Hook *hookPtr, Object *obj, ... );
  94. ULONG DoMethodA( Object *obj, Msg *message );
  95. ULONG DoMethod( Object *obj, unsigned long MethodID, ... );
  96. ULONG DoSuperMethodA( struct IClass *cl, Object *obj, Msg *message );
  97. ULONG DoSuperMethod( struct IClass *cl, Object *obj, unsigned long MethodID,
  98.     ... );
  99. ULONG CoerceMethodA( struct IClass *cl, Object *obj, Msg *message );
  100. ULONG CoerceMethod( struct IClass *cl, Object *obj, unsigned long MethodID,
  101.     ... );
  102. ULONG SetSuperAttrs( struct IClass *cl, Object *obj, unsigned long Tag1,
  103.     ... );
  104. #endif     /* CLIB_ALIB_PROTOS_H */
  105.